package ar.com.algotres.tpdos.modelo.naves;

import ar.com.algotres.tpdos.modelo.fisica.CoordenadasDePosicioInvalidaException;
import ar.com.algotres.tpdos.modelo.fisica.Posicion;
import ar.com.algotres.tpdos.modelo.fisica.disposiciones.Orientacion;

public class FabricaDeNaves {

	public static Buque crearBuque(Posicion casillero, Orientacion orientacion)
			throws CoordenadasDePosicioInvalidaException {
		return new Buque(casillero, orientacion);
	}

	public static Nave crearDestructor()
			throws CoordenadasDePosicioInvalidaException {
		return new Destructor(null, null);
	}

	public static Destructor crearDestructor(Posicion casillero,
			Orientacion disposicion)
			throws CoordenadasDePosicioInvalidaException {
		return new Destructor(casillero, disposicion);
	}

	public static Lancha crearLancha(Posicion casillero, Orientacion disposicion)
			throws CoordenadasDePosicioInvalidaException {
		return new Lancha(casillero, disposicion);
	}

	public static PortaAviones crearPortaAviones(Posicion casillero,
			Orientacion disposicion)
			throws CoordenadasDePosicioInvalidaException {
		return new PortaAviones(casillero, disposicion);
	}

	public static RompeHielos crearRompeHielos(Posicion casillero,
			Orientacion disposicion)
			throws CoordenadasDePosicioInvalidaException {
		return new RompeHielos(casillero, disposicion);
	}
}
